程式設計的對話
將一個簡單的「你好,世界!」與猜數字遊戲之間的差異,視為一種 獨白 與一種 對話的差異。在獨白中,程式發言後便結束;而在對話中,程式會提問、開啟接收器,並暫停其內部時鐘,直到使用者回應為止。
1. 前置條件與作用範圍
Rust會自動引入一組稱為 前置條件 的小集合至每個程式中。然而,對於終端機輸入等特殊任務,我們必須明確地將 標準函式庫 引入到作用範圍中,使用 use std::io;。這彌補了您程式內部邏輯與外部環境之間的差距。
2. 宏與函數的差異
您會注意到 println! 以驚嘆號結尾。這表示它是一個 宏。與一般函數不同,宏可以處理可變數量的參數,並在編譯時期執行字串插值(填入 {guess})
3. 互動生命週期
當您執行 cargo run時,程式會初始化,達到 io::stdin().read_line(),並暫停執行。它會等待使用者按下『Enter』鍵,然後將該輸入包裝成一個 Result 型別,以安全地處理潛在的硬體失敗情況。
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>